home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 22 / Cream of the Crop 22.iso / bbs / zchss18c.zip / ZCHESS.DOC < prev    next >
Text File  |  1996-10-31  |  42KB  |  1,006 lines

  1.  
  2.     SYSOP.DOC, Version October 31, 1996
  3.  
  4.     Paul Fargen
  5.     6200 Richiewayne Drive
  6.     Louisville, KY
  7.     Ver 1.8 February 1996
  8.     Ver 1.8B September 9, 1996
  9.  
  10.  
  11.     DISTRIBUTION
  12.  
  13.     Please distribute this Shareware version of ZCHESS via BBS, CD-ROM, or
  14.     any other suitable means.
  15.  
  16.     Paul Fargen grants an unlimited license to make and distribute
  17.     shareware copies of ZCHESS.  No modifications to the files contained
  18.     in the software package, including this file, may be made before
  19.     distribution.  No fee may be charged by anyone other than Paul
  20.     Fargen beyond the actual cost of providing these copies without the
  21.     prior written consent of Paul Fargen.  This does NOT apply to the
  22.     ZCHESS.KEY file.
  23.  
  24.     Paul Fargen encourages distribution on CD-ROM, BBS systems, and
  25.     other media so long as the purchaser of the medium is aware that
  26.     they must also register ZCHESS to use this software beyond a
  27.     resonable trial period.  The purchase price of the media or any
  28.     subscription costs to an online service do not pay for this license.
  29.  
  30.  
  31.     PURPOSE
  32.  
  33.     The program ZCHESS.EXE is a chess door program which allows users to
  34.     play each other in correspondence, real-time chess or interBBS
  35.     chess.  ZCHESS does not make chess moves itself, but will check
  36.     human moves for legality and draws while keeping track of their
  37.     games.
  38.  
  39.  
  40.     SHAREWARE CRIPPLE
  41.  
  42.     Zchess played without a key limits the number of moves that can be
  43.     played in a game to 50.  This limit is not imposed on games that are
  44.     started and completed in a single day, allowing you to evaluate the
  45.     real-time, head-to-head feature entirely.  The limit will be imposed
  46.     on all games that span more than 24 hours.
  47.  
  48.  
  49.     PROGRAM LICENSE AGREEMENT
  50.  
  51.     Paul Fargen reserves all rights to this software product and
  52.     documentation.  The registered version of this package does not
  53.     include source code.  No part of these programs, including the
  54.     ZCHESS.KEY file, may be reverse-engineered or disassembled.
  55.     Distributing, repackaging, or reselling of the registered version of
  56.     the software to third parties is forbidden.  You may, however,
  57.     create chess programs using the graphical .ICN files, and you may
  58.     also write programs that read and write to the data files that
  59.     support ZCHESS so long as such applications do not serve to defeat
  60.     any limitations imposed on unregistered, shareware installations.
  61.     You may also edit, create new and distribute .ICN files with the
  62.     same names as used by Zchess under a separate effort.  Example
  63.     source code MAY be made available on the support BBS listed below
  64.     upon request.  An exceptional License is granted to competing
  65.     sources to incorporate the format employed for interBBS play for
  66.     that same purpose, as long as you grant a similar License to me for
  67.     any other format you employ for the same purpose.
  68.  
  69.     Paul Fargen disclaims all warranties relating to this software, whether
  70.     expressed or implied, including, but not limited to, any implied
  71.     warranties of merchantability or fitness for a particular purpose, and
  72.     all such warranties are expressly and specifically disclaimed.  Neither
  73.     Paul Fargen nor anyone else who has been involved in the development,
  74.     testing or delivery of this software shall be liable for any indirect,
  75.     consequential, or incidental damages arising out of the use or
  76.     inability to use such software, even if Paul Fargen has been advised of
  77.     the chance of such damages or claims.  In no event shall Paul Fargen's
  78.     liability for any such damages ever exceed the price paid to Paul
  79.     Fargen for a license to use the software, regardless of the form of
  80.     the claim.    The person using the software bears all risk as to the
  81.     quality and performance of the software.
  82.  
  83.     Some states do not allow the exclusion of the limit of liability for
  84.     consequential or incidental damages, so the above limitation may not
  85.     apply to you.
  86.  
  87.     The license you may choose to purchase is assigned to you as an
  88.     individual, not your BBS.  You may run ZCHESS on one system per
  89.     license.  You may not transfer this license without the expressed
  90.     written consent of the author, which must be notarized.
  91.  
  92.     If you do not agree to these terms, then you may not run Zchess or
  93.     use any of the associated files.
  94.  
  95.  
  96.     TRADEMARK ACKNOWLEDGMENTS
  97.  
  98.     Turbo C is a registered trademark of Borland International, Inc.
  99.     QuickC, Windows, MS, MS-DOS are registered trademarks of Microsoft
  100.     Corporation.  PCL4C is copyrighted by MarshallSoft Computing, Inc.
  101.     PKUNZIP is copyrighted by PKWARE, INC.  Hayes is a registered trademark
  102.     of Hayes Microcomputer Products, Inc.  RIPscrip language is copyrighted
  103.     by TeleGrafix Communications, Inc.    DESQview is a trademark of
  104.     Quarterdeck.  Other trademarks and copyrights not listed above are
  105.     property of their respective companies.
  106.  
  107.  
  108.     SOFTWARE USED
  109.  
  110.     This program uses the PCL4C "Personal Communications Library" for C,
  111.     version 4.3 for most of the serial communications from the computer
  112.     to the modem.  Using this library, most of the code for the
  113.     communications portion of this terminal program were written very
  114.     quickly.  If you are planning to write programs that require serial
  115.     routines, you may wish to consider this product.  It is available as
  116.     Shareware on many BBSes, or directly from the author at the
  117.     following address.
  118.  
  119.         MarshallSoft Computing, INC.
  120.         Post Office Box 4543
  121.         Huntsville, AL 35815
  122.  
  123.         BBS:  205-880-9748   (14400, N, 8, 1)
  124.  
  125.     This door was compiled with Turbo C++ version 3.0.
  126.  
  127.     System Requirements
  128.  
  129.      BBS
  130.      * IBMPC compatible (8086 or higher)
  131.      * DOS 3.X or higher.
  132.      * EGA for graphical local screens.
  133.      * ANSI.SYS, NANSI.SYS, DVANSI.COM, etc. if running ZCHESS
  134.        locally.
  135.      * Minimal RAM memory, perhaps 300K.
  136.      * Serial ports using IRQs 2,3,4,5,6,7 and any address, or a
  137.        fossil.
  138.      * SHARE.EXE loaded for multinode systems.
  139.      * DV compatible (DV aware), Windows and OS/2 time slices.
  140.      * A diskcache program is strongly recommended.  Zchess polls
  141.        the disk for changing files every five to ten seconds.
  142.      * A DOOR.SYS dropfile for BBSes.  DOOR.SYS files can be created
  143.        for NOVELL or LANTASTIC type networks.
  144.      * the FILES statement in CONFIG.SYS should be at least 40 for
  145.        running from a BBS Door.
  146.  
  147.      Remote User
  148.      * ANSI emulation
  149.      * RIPScrip (optional)
  150.  
  151.     INSTALLATION ( QUICK START )
  152.  
  153.     1.    Copy all the files received into a subdirectory, and unzip.
  154.     The directory may be anything as long as the path name is less than
  155.     sixty characters or so.  When unzipping, you should see an "-AV" beside
  156.     each filename.  The last two lines should appear as
  157.  
  158.     Authentic files Verified!    # JWE939
  159.     PAUL FARGEN
  160.  
  161.     If this is not the case and you have any doubts about the source of
  162.     ZCHESS, call the support BBS listed below and download the latest
  163.     version.
  164.  
  165.     2.    Run the SETUP.EXE program.  You will be prompted for the
  166.     information that is to be stored in ZCHESS.CFG.  This information is
  167.     explained elsewhere in this document.  To use setup, use your cursor
  168.     keys to select each item, answering the questions as best your can.
  169.     Often the defaults will be sufficient to get Zchess up and running.
  170.  
  171.     SETUP will also create the subdirectories required by ZCHESS.
  172.  
  173.          \OPEN contains the game files, User to user messages, Note
  174.             files, HISTORY.DAT and for Networked subs, NET.CFG.
  175.          \MSG contains all messages sent from node to node during
  176.           multinode play.
  177.          {BULLS} (Path configured by ZCHESS.CFG ) is the location that
  178.              bulletins generated by the maintenance routines
  179.              will be placed.
  180.          {PLAYER_DATA} (Configured by ZCHESS.CFG) is the location
  181.               that the player data (ratings, games won, etc.)
  182.               will be kept.  If you run multiple copies of
  183.               ZCHESS, you can specify the identical path for
  184.               each door.  This allows the player data to be one
  185.               rating list.  Real-time chess sections use another
  186.               ratings list saved in the subdirectory for that
  187.               section.    Other Sections (subdirectories) can also
  188.               be setup.  Using SETUP.EXE, you may wish to add
  189.               some for timed chess, such as
  190.  
  191.               REAL1 5 minutes for all moves (Head to head)
  192.               REAL2 10 minutes for all moves (Head to head)
  193.               REAL3 20 minutes for all moves (Head to head)
  194.               REAL4 40 minutes for all moves (Head to head)
  195.               REAL5 60 minutes for all moves (Head to head)
  196.               REAL6 120 minutes for all moves (Head to head)
  197.               REALx 30 minutes for all moves (Head to head)
  198.  
  199.           OPEN1    An extra local or networked section.
  200.           TOUR    A tournament section.
  201.  
  202.     Time limits for REAL sections are set according to the Section name.
  203.     The default is thirty minutes.
  204.  
  205.     For real-time chess sections,  clocks will tick down.  Also, move
  206.     take-back is disabled.  The time for your moves is always maintained by
  207.     your session of ZCHESS.  Time for your opponent's moves is only
  208.     estimated by your session, and maintained by his own session.
  209.  
  210.     3.    To run ZCHESS from your BBS, install a call to ZCHESS.EXE
  211.     giving the complete path to DOOR.SYS as the command line parameter.  An
  212.     example of this is:
  213.  
  214.     C:\ZCHESS\ZCHESS.EXE C:\BBS\WORK\NODE%WCNODEID%\DOOR.SYS
  215.  
  216.     If your BBS does not generate a DOOR.SYS drop file there are many
  217.     conversion programs that will convert whatever you have to DOOR.SYS.
  218.     If you can't find a converter please
  219.     send a copy of your drop file to me at the address below, and I may
  220.     choose to write a conversion for the information required by the
  221.     program.  Let me know if you want the program mailed or posted on
  222.     the support BBS.
  223.  
  224.     Alternatively, you may run Zchess without any command line
  225.     parameters.  You will be asked to login, and will be assigned 60
  226.     minutes remaining.    This feature might be usefull for some LAN
  227.     configurations.
  228.  
  229.     4.    You may run ZCHESS locally with LOCAL.BAT.  This batch file will
  230.     call ZCHESS with an abreviated DOOR.SYS that was created by SETUP.EXE.
  231.     Note:  When games are finished, Zchess will attempt to notify you the
  232.     next time you run the door via a telegram.    Since the MSG\*.TGR
  233.     files are cataloged by the actual BBS number, local players should
  234.     run from the BBS Door at least once, or these telegrams will not
  235.     function for you.
  236.  
  237.     5.    Post the files ZC_BW.ZIP and ZC_RB.ZIP for download by your RIP
  238.     users.  These contain the RIP icon files that should be copied into the
  239.     RIP subdirectory.  Also, you may modify or create new sets of icons,
  240.     posting these for your users.  These files may be edited with IMED,
  241.     available from Paul Fargen by request.  Other RIPScrip icon editors
  242.     may be used as well, as long as you maintain a filelength of 566.
  243.  
  244.     6.    Maintenance should be performed once a day.  MAINT.EXE will lockout
  245.     all other nodes during the one or two minutes required.  MAINT does not
  246.     require any command line switches.    Your BBS should be configured to run
  247.     MAINT.EXE as a daily event or weekly event.
  248.  
  249.  
  250.     SYSTEM LOCKOUT
  251.     As mentioned above, MAINT.EXE will lockout all other nodes when it
  252.     runs.  Additionally, if your run NETCHESS.EXE, that program will
  253.     lockout all nodes as well.    SETUP.EXE must lockout all nodes before
  254.     it allows you to run as well.  As there are menu choices to run
  255.     maintenance or zchess from the setup main menu, the system lockout
  256.     is released as soon as either of these are selected.  You should be
  257.     sure that there is no chance that a player will logon during a setup
  258.     session before running MAINT or ZCHESS.  More that likely, nothing
  259.     will go wrong should a player logon from your BBS while you are
  260.     running SETUP after the system lockout has been released.  Still,
  261.     running any of the setup functions while the BBS is up is "not
  262.     supported", meaning that
  263.     if it works for you then great.  If it doesn't work, then don't do
  264.     it!  (It will probably be okay, though.)
  265.  
  266.     MANAGING A TOURNAMENT
  267.     Tournaments are managed through the ZCHESS door, and not the maintenance
  268.     program.  The sysop may create the next round using 'M' from the
  269.     main menu, after switching sections to the tournament.
  270.  
  271.  
  272.     REGISTERED PROGRAM KEY FILE
  273.  
  274.     When the program starts ZCHESS will try to open a file called
  275.     ZCHESS.KEY.  The major difference between the Shareware version and
  276.     the registered version is the existence of this file.  Your BBS ID
  277.     is copied from the registration number on this key, which assures
  278.     that each BBS ID is unique.  Shareware versions allow the sysop to
  279.     specify a BBS ID, but the first character is forced to a dash, which
  280.     maintains the uniqueness of the registered users' keys.
  281.  
  282.  
  283.     COMMAND LINE ARGUMENTS FOR ZCHESS
  284.  
  285.         path\DOOR.SYS
  286.         Required location and name (always should be DOOR.SYS) of
  287.         the system drop file.  If not specified, you will be able to
  288.         login.
  289.  
  290.         NO_CTS
  291.         ZCHESS ignores the CTS line when sending characters out the
  292.         port.
  293.  
  294.         NO_DCD
  295.         ZCHESS ignores the DCD, data carrier detect line.  To be
  296.         used for three-wire operation.
  297.  
  298.         NOTIFY
  299.         Zchess will run the notify routine and then exit.  Setup
  300.         your BBS to call
  301.  
  302.         ZCHESS.EXE path\DOOR.SYS NOTIFY
  303.  
  304.         as one of your log-on externals to allow people to know that
  305.         they have a move.
  306.  
  307.  
  308.     CONFIGURATION FILE: ZCHESS.CFG
  309.  
  310.     This file is created by SETUP.EXE or with an ASCII test editor.  The
  311.     format used was proposed to me by Charles Taylor, of Pikinu's Yap Yap
  312.     BBS in Louisville.    Each line begins with an optional comment,
  313.     describing what the variable is.  ZCHESS will ignore anything prior to
  314.     the '=' sign.
  315.  
  316.     This is a sample ZCHESS.CFG file:
  317.  
  318.  Database Rev            = 1
  319.  Sysop's name                   = Paul Fargen
  320.  BBS name            = Rip On A Rope
  321.  BBS_ID             = FARG
  322.  Max games per player        = 25
  323.  Max days before default    = 0
  324.  Path to bulletins        = C:\ZCHESS\BULLS\
  325.  Path to PLAYERS.DAT        = C:\ZCHESS\PLAYERS\
  326.  Number of nodes        = 1
  327.  Path to PKUNZIP        = \PKWARE\
  328.  PathNAME of downloader        = \DSZ\DZDL.BAT
  329.  Logging active ?        = 1
  330.  Seconds between status updates = 1
  331.  Daily time limit        = 9999
  332.  Time zone            = EST
  333.  Give up time slice?        = 1(1=Yes,0=No)
  334.  
  335.  
  336.     Database Rev
  337.     Should always be 1 for revisions starting at 1.5.
  338.  
  339.     Sysop'S Name
  340.     Enter the sysop's name on the first line.
  341.  
  342.     BBS Name
  343.     Enter the BBS name on the second line.
  344.  
  345.     BBS_ID
  346.     The BBS ID is an abbreviation of the BBS's name.  It will be used by
  347.     future versions of ZCHESS when networking between BBSes is added.
  348.     (Version 2.0  April 1996)
  349.  
  350.     Max Games Per Player
  351.     This number is checked when a player is trying to start or join a game.
  352.     Max games can be changed at any time.  Existing games are allowed to be
  353.     completed.
  354.  
  355.     The author intended the maximum number of games per user to be set
  356.     from twenty to 100.  This setting will, of course, be global to all
  357.     sections in a single door.    If this limit is set to 0, no games can
  358.     be started from the door, and the message "This is a Special
  359.     section.  You can't start games" will popup whenever a player
  360.     attempt to start or join a game.  If you desire to have some areas
  361.     to be configured normally, and other areas to have games setup
  362.     offline by the sysop or other means, you should run Zchess in two
  363.     different doors, allow these different configurations.  You should
  364.     consider setting the paths to PLAYERS.DAT to be identical, allowing
  365.     a common database of ratings between the doors.
  366.  
  367.     Max Days Before Default
  368.     This is the number of days a player has to make a move before the
  369.     maintenance routines forfeits the game.  It is also used as the time a
  370.     finished game will remain for the purpose of annotations.
  371.  
  372.     Path To Bulletins
  373.     This is where the bulletins generated by the maintenance routines are
  374.     placed.  It can be set to your BBS's bulletin directory.
  375.  
  376.     Path To PLAYERS.DAT
  377.     This is the location of the player data file.  It can be set
  378.     identically for all copies of the door you run.  (Note that ZCHESS
  379.     has a 100 game limit for each section.) You can specify as much or
  380.     as little detail in the paths as your system requires.  For networks
  381.     that allow mapping drive letters to paths, being brief might be the
  382.     best choice.  If zchess is running on a single node BBS, then the
  383.     path might be fully specified, i.e.
  384.  
  385.     C:\ZCHESS\PLAYERS\
  386.  
  387.     If you are running on a local area network, you might just specify
  388.     the next level, i.e.
  389.  
  390.     PLAYERS\
  391.  
  392.     Zchess must find this path, or the program will not run.
  393.  
  394.  
  395.     Number of Nodes
  396.     Used for communications between nodes when running ZCHESS.    Messages
  397.     are sent to all nodes less than or equal to this setting.  This should
  398.     be set to the number of nodes you now have active if you desire
  399.     real-time messages between nodes.
  400.  
  401.     Path to PKZIP/PKUNZIP
  402.     This can be set to the path required for ZCHESS to find these files.
  403.     It is not required for this version.  In the future, it will be used to
  404.     zip or unzip network-required files.
  405.  
  406.     Path/Name for downloader
  407.     Set this to the path and filename of your downloader.  It is not used
  408.     by this version of ZCHESS, but may be used in the future to allow
  409.     download of the .ICN files to RIP users.
  410.  
  411.     Logging active?
  412.     If logging is active, reasons for the program ending other than the
  413.     normal 'X' exit choice are logged to a file named "ZCHESS.LOG".  This
  414.     file is renamed to "ZCHESS.BAK" after it grows in size to 50,000 bytes.
  415.     With these two files, reasons for program termination can be
  416.     determined.  If logging is active, users are required to press any key
  417.     within the first few seconds of starting ZCHESS.  This will quickly
  418.     return them to the BBS if there are problems with passing the DOOR.SYS
  419.     parameter, the NODEx.CFG required by a particular non-standard port is
  420.     missing or incorrect, or there are other problems.    If a key-press
  421.     can't be read by ZCHESS, then it will exit.
  422.  
  423.     Secs Between Status Update
  424.     This control the frequency of the status line being repainted at the
  425.     bottom of the screen.  If set to 0, it will be disabled.  Information
  426.     about the user name, node, etc.  is displayed.
  427.  
  428.     Daily Time Limit
  429.     To limit the minutes a user can stay in the door each day.    This can be
  430.     more restrictive than the BBS limit.  Zero, or a large number will
  431.     disable this feature.
  432.  
  433.     Time zone
  434.     Used when generating messages for Synchronet BBS.
  435.  
  436.     Give up time slice?
  437.     Releases of OS/2 Warp by IBM and Windows 95 by Microsoft prompted
  438.     the addition of time-slice returning for DOS windows in these and
  439.     other operating systems.  It may be that Zchess and other tasks
  440.     running on your computer operate better without giving up the time
  441.     slice, however.  You may set this flag to 0 (for No) if this is the
  442.     case.  Otherwise, Zchess will give up its time slice if waiting on a
  443.     keyboard input (or character from the remote) for DOS windows under
  444.  
  445.          Desqview
  446.          Windows Standard Mode
  447.          Windows 386 mode
  448.          Windows 95
  449.          Windows NT (Not tested at the time release)
  450.          OS/2
  451.  
  452.     Graphics
  453.     Local mode RIP is actually EGA mode graphics.  The pieces used are the
  454.     .ICN files that came with ZCHESS.  If you wish to edit the pieces, get
  455.     a copy of IMED from the BBSes listed below or use another RIP Icon
  456.     editor of your choice.
  457.  
  458.     Saving Games
  459.     As games are ended, they are written to a .PGN (Portable Game
  460.     Notation) file.  The file will be located in the same directory that
  461.     contained the game.  Games are appended to this file.  You should
  462.     check the size of the file periodically, and move it to a directory
  463.     accessible to your users.  If you prefer to not save all of the games
  464.     in .PGN files, simply delete 2PGN.EXE.
  465.  
  466.  
  467.     RUNNING TOURNAMENTS
  468.  
  469.     To create a tournament, use SETUP.EXE to create a subdirectory that
  470.     begins with the letters TOURN.  Players can then 'S'witch to that
  471.     sub and 'J'oin the tournament.  Note that joining multiple times
  472.     will result in a single entry, as the list is filtered when the
  473.     tournament maintenace routine is performed.
  474.  
  475.     After everyone has had an opportunity to join the tournament, the
  476.     sysop can 'S'witch to that section from the door, and press 'M' for
  477.     Manage Tourny.  The list of entries can be edited to some degree,
  478.     and then the number of groups should be selected.  I believe that a
  479.     good number of players for a group is three to five.  The smaller
  480.     the group, the more games are required, as everyone in a group will
  481.     play White and Black against every other player in his group.
  482.     The grouping can be edited somewhat as well.
  483.  
  484.     Finally, the games required for the first round will be created.
  485.     Note that players are not allowed to start or join games in TOURN
  486.     sections, so each game must be created either with ZCHESS or manually
  487.     by the sysop.
  488.  
  489.     Deleting a tournament
  490.     To delete a tournament, you can delete the entire directory which
  491.     contains it.  At a minimum, you must delete GAME*.DAT and CROSS.TXT.
  492.  
  493.     TIME SLICING
  494.     Zchess will sense the operating system when it is started.    If it
  495.     finds OS/2, Windows 3.x, Windows 95, Windows NT or Desqview, it will
  496.     try to return the time slice each time the keyboard scan returns a
  497.     no keypress.  This may make Zchess run too sluggishly or jerky on
  498.     some systems.  For this reason, you can configure Zchess to never
  499.     return the time slice, and let the operating system gram time away
  500.     as it needs.
  501.  
  502.  
  503.     WORKING WITH PLAYER DATA
  504.  
  505.     The PLAYERS.DAT file contains the names, ratings and won-loss records
  506.     of the users.  There is one file for all of the OPEN sections, and one
  507.     each for the REAL section.    These are binary files, and cannot be
  508.     edited directly.
  509.  
  510.     The MAINT.EXE program exports the PLAYERS.DAT file to PLAYERS.TXT, and
  511.     then re-imports all data.  This allows users that aren't active to be
  512.     deleted by changing the first letter of their name to a tilde.  Such
  513.     records are skipped during the import phase of maintenance.  If you
  514.     have a need to change things about a particular record, you may
  515.  
  516.     1.  Run MAINT.EXE to get a PLAYERS.TXT file.
  517.     2.  Change directories to the PLAYERS.DAT and PLAYERS.TXT files
  518.         you wish to work with.
  519.     3.  Edit PLAYERS.TXT as required.
  520.     4.  Run IMPORT.EXE to import the text into PLAYERS.DAT.
  521.  
  522.     While working with the exported PLAYERS.TXT file, you will notice
  523.     that there are some spare fields, which may be used in future versions
  524.     of Zchess.    These fields should be set to 0.  As this file is
  525.     imported to PLAYERS.DAT, these fields are reset to zero.  The
  526.     maintenance program monitors these fields, and if there are found
  527.     to be non-zero, will assume that this file is corrupt, and will
  528.     attempt to rebuild PLAYERS.DAT from the PLAYERS.NAM file.
  529.  
  530.     A typical record would have the format of
  531.  
  532. Number           = 0
  533. Name           = Paul Fargen
  534. BBS_ID           = 0
  535. Security       = 99
  536. Rating           = 1400
  537. Wins           = 1
  538. Losses           = 2
  539. Draws           = 3
  540. Spare           = 0
  541. Graphics       = 5
  542. Bypass Intro   = 0
  543. BBS user number= -1
  544. Spare           = 000
  545. Min Left Today = 1000
  546. Secs Left Now  = 600
  547. Last on        = 823415247
  548. $end_record$ ---------------------------------------------------------
  549.  
  550.     Number
  551.     A sequential number that is assigned as people enter the door.  This
  552.     number is reassigned by maintenance should players be deleted.
  553.  
  554.     Name
  555.     The name will be the name (24 characters max) that is used during
  556.     logon.  Names are retrieved from the tenth line of DOOR.SYS.  They
  557.     may be the real name or the alias, as configured by your BBS.  If
  558.     the first letter of the name is changed to a tilde ( ~ ), the name
  559.     will not be skipped during import with either IMPORT.EXE, or by the
  560.     maintenance program.
  561.  
  562.     BBS_ID
  563.     An unused field.  Leave set to zero.
  564.  
  565.     Security
  566.     The security level of the user as retrieved from DOOR.SYS.    Not used
  567.     by this version of Zchess.
  568.  
  569.     Rating
  570.     The chess rating.  New players are assigned a rating of 1400.  For
  571.     games completed, the rating is recalculated as follows:
  572.     For winner:
  573.     New rating = old rating + ( Loser'sRating-Winner'sRating)/25+16.
  574.     For the Loser
  575.     New rating = old rating + ( Winner'sRating-Looser'sRating)/25-16.
  576.  
  577.     The following exceptions are made:
  578.  
  579.     1.    If the difference between ratings is more than 400, it is assumed to
  580.     be 400.
  581.     2.    At least two points must be exchanged if the game ends
  582.     decisively.
  583.     3.    If a rating falls below 1200, it is assigned 1200.
  584.     5.    Should a rating grow above 2800, it is assigned 2800.
  585.  
  586.  
  587.     Note that every point of ratings gained by one player is lost by
  588.     the other, except for the assignment of 1200.
  589.  
  590.     Ratings on one BBS might not correspond to ratings on another BBS.    The
  591.     strength of a given rating is dependant on the strength of the
  592.     players on the BBS.  The average will be 1400, or slightly above on
  593.     all BBSes.    If your BBS participates in networked games, the ratings
  594.     of your players will be averaged, to some degree, with the BBS, as
  595.     ratings points are exchanged in networked games too.
  596.  
  597.     Wins
  598.     The number of wins for the player.
  599.  
  600.     Losses
  601.     The number of losses for the player.
  602.  
  603.     Draws
  604.     The number of draws for the player.
  605.  
  606.     Spare
  607.     A spare number.  Leave set to 0.
  608.  
  609.     Graphics
  610.     The graphics configuration of the user, set by using '&' from the
  611.     main Zchess menu.  While users will have a mode selected for the BBS,
  612.     they may choose to differ in Zchess.  This will be one of the
  613.     following values:
  614.  
  615.     1 - Autodectect
  616.     2 - Match mode in BBS
  617.     3 - RIP154.  Will use the .ICN files which should be downloaded by
  618.     the users.  ZC_BW.ZIP or ZC_BR.ZIP contain icons for all pieces
  619.     required.  These files should have been shipped with ZCHESS.
  620.     4 - RIP200.  Will use the .BMP files, which will be converted
  621.     automatically by RIPTERM 2.xx from the .ICN files described
  622.     above.
  623.     5 - ANSI Color.  Will send text based pieces.
  624.  
  625.     Bypass Intro
  626.     Should be '0' for no or '1' for yes.  If set to Yes, the opening
  627.     graphic will not be displayed, and the user will go to the main
  628.     menu as quickly as possible.
  629.  
  630.     BBS user number
  631.     The user number as assigned by the BBS software.  This is used to
  632.     store Telegrams.
  633.  
  634.     Spares
  635.     Three spare numerical data files.  Leave this line set to 000.
  636.  
  637.     Min Left Today
  638.     Minutes remaining.    Is set by Zchess each time a user starts the door.
  639.  
  640.     Secs Left Now
  641.     Seconds remaining.    Is set by Zchess, and used to force the user
  642.     out of the door as their time alloted on the BBS runs out.
  643.  
  644.     Last on
  645.     Time that the user last entered the Zchess door.  Is stored as the
  646.     number of seconds since 1-1-1970.
  647.  
  648.  
  649.     SOLUTIONS TO POSSIBLE ERRORS AND PROBLEMS
  650.     If there is an unusual error, zchess will try to exit gracefully.
  651.     Depending on what the problem is, an entry will be added to the
  652.     bottom of a file called ZCHESS.LOG.  The entry will be time stamped,
  653.     and include the user's name at the time to assist you with finding
  654.     and solving the problem.
  655.  
  656.     Bad door.sys -> C:\ZCHESS\DOOR.SYS.
  657.     The drop file specified wasn't found by Zchess.  This is probably
  658.     caused by failing to include the path.
  659.  
  660.     COLORS UNDER WINDOWS 3.1
  661.     The ANSI.SYS I use tends to have global colors for all DOS windows
  662.     under WIN 3.xx.  The colors may not be consistant, as everything
  663.     printed to the local screen is done via ANSI.
  664.  
  665.     AllocSeg Error
  666.     I've never seen this happen.  When Zchess opens the communications
  667.     port, it grabs the IRQ from the BBS, and allocates some memory to
  668.     serve as an input buffer of 64 bytes.  If this memory isn't
  669.     available, you should give Zchess a larger window to run from.
  670.  
  671.     Quick find record failure...
  672.     Error finding end of PLAYERS.DAT
  673.     Error getting size of PLAYERS.DAT
  674.     Put player failure... Run SETUP.EXE
  675.     Get player failure... Run SETUP.EXE
  676.  
  677.     These errors concern the PLAYERS.DAT file.    This file maintains a
  678.     record for all players that includes their name, ratings,
  679.     won-draw-loss records, configuration, last time on and some other
  680.     BBS related flags.    If you try to run ZCHESS.EXE without first
  681.     running SETUP.EXE, you might get one of these errors.  If
  682.     PLAYERS.DAT is corrupted, you might see one of these errors.
  683.  
  684.     You should create a valid copy of players.dat.  SETUP.EXE will
  685.     create a PLAYERS.DAT of zero length, which is of course the
  686.     smallest.  As players play ZCHESS, they are added to this file with
  687.     a record size of 61 bytes.    The format of each record was coded in C
  688.     as follows:
  689.  
  690.     struct PLAYER_STRUCT
  691.     {
  692.         unsigned long number;      /*  0 - ??  Numbered in order of playing Zchess */
  693.         char name[MAXNAMELENGTH]; /* 25 bytes allowing 24 char name with null */
  694.         short BBS_ID_pointer;      /* Future use?? */
  695.         unsigned long security;   /*  10 - 99 on most BBSes?  */
  696.         short rating;          /*  1400 is the average. */
  697.         short wins;          /* 0 - 32000+ */
  698.         short losses;          /* 0 - 32000+ */
  699.         short draws;          /* 0 - 32000+ */
  700.         char spare_config0;      /* Spare */
  701.         char graphic_mode;      /* Set by '&'.  ANSI, RIP, etc. */
  702.         char bypass_intro;      /* Set by '&'.  1 or 0 for Yes or No */
  703.         char spare_config2;      /* Spare */
  704.         char spare_config3;      /* Spare */
  705.         short BBS_player_number;  /* User # for BBS.  For Telegrams */
  706.         char spare_config4;      /* Spare */
  707.         char spare_config5;      /* Spare */
  708.         char spare_config6;      /*  Used to sort tourneys */
  709.         short minutes_remaining_today; /*  Set at logon */
  710.         time_t seconds_remaining;      /*  Set at logon */
  711.         time_t last_on;       /*  LONG INT.  # of seconds since 1-1-70 */
  712.     };
  713.  
  714.     Suspicious Data
  715.     If users complain that their number of wins displayed has been reset
  716.     to zero, that their player number is a very very large number, or
  717.     that there is something else wrong with the ratings, records or
  718.     player information, PLAYERS.DAT may have been corrupted.  Corruption
  719.     can be caused by system disk problems or loss of power at the wrong
  720.     time, and possibly a number of other surprises.
  721.  
  722.     Once corrupted, PLAYERS.DAT should be deleted.  This is a binary
  723.     file, and data can't be saved if the entire file is not intact.
  724.     Chess players will be very disappointed if their ratings and records
  725.     are lost.  There are a few remedies you might wish to try.
  726.  
  727.     1.    Delete PLAYERS.DAT.
  728.     2.    Look at PLAYERS.TXT using a text editor, such as MS DOS's EDIT.
  729.     If the information in this file appears to be correct, run
  730.     IMPORT.EXE from this subdirectory.  Remember to specify the
  731.     path to IMPORT.EXE, but run the program from the directory which
  732.     is to be repaired.
  733.  
  734.     A second option is to rebuild from the PLAYERS.NAM file.  Each time
  735.     a user logs off or changes sections, the most critical data is saved
  736.     to a file called PLAYERS.NAM in the same directory as PLAYERS.DAT
  737.     and PLAYERS.TXT.  To do this rebuild, do the following:
  738.  
  739.     1.    Delete PLAYERS.DAT.
  740.     2.    Change directories to the Zchess directory.
  741.     3.    Run MAINT.EXE.
  742.  
  743.     MAINT.EXE will discover that the PLAYERS.DAT file is missing, and
  744.     begin rebuilding it from the PLAYERS.NAM file.  It might be expected
  745.     that the problem with PLAYERS.DAT wouldn't be discovered until after
  746.     quite a few new logins.  Logging in would create a new record, with
  747.     a rating of 1400, and no games completed.  PLAYERS.NAM would
  748.     hopefully have the current rating and record of these players before
  749.     the problem, as well as the new information.  MAINT will read each
  750.     entry from PLAYERS.NAM, and use the latest entry if the number of
  751.     games completed is the same, and use the record having the most
  752.     number of games completed otherwise.  Hence, the old information
  753.     would be restored.
  754.  
  755.     ZCHESS RUNS SLOWLY WHEN CHANGING SCREENS OR EXITING
  756.     Configuring more nodes than is necessary will slow down the Zchess.
  757.     Zchess writes a message to each other node every time the menu is
  758.     changed.  If the max node set in ZCHESS.CFG is unnecessarily large,
  759.     then time is waisted.  Always set the max nodes to the smallest
  760.     possible.
  761.  
  762.     SUPPORT FOR NON-STANDARD NODES
  763.     If your BBS has a node that is other than a UART port 1,2,3 or 4,
  764.     you should setup a non-standard node using SETUP.EXE.  This will
  765.     create a file which should have two lines.    For fossil ports,
  766.     the lines will be similar to:
  767.  
  768.  
  769.     FOSSIL
  770.     15
  771.  
  772.     The first line will always be FOSSIL.  The second line will be the
  773.     fossil port that should be used.  These lines are saved into a file
  774.     called NODEx.CFG, where x is the node number of your BBS which has
  775.     a non-standard port.
  776.  
  777.  
  778.     If you have a port that has a different address or IRQ than the
  779.     standard for COM1, COM2 COM3 and COM4, you should generate a file
  780.     with the following two lines:
  781.  
  782.     3E8
  783.     4
  784.  
  785.     The first line is the hex address of your port, and can be set to
  786.     whatever you have.    The second line is the IRQ, also in hex.  For this
  787.     version of Zchess the IRQs are limited to 2,3,4,5,6 and 7.    Note that
  788.     a NODEx.CFG file should not be present if the comport reported in
  789.     DOOR.SYS is COM1 through COM4 and it uses the standard addresses and
  790.     IRQs.
  791.  
  792.     COMMUNICATIONS
  793.     There are a few various communications vehicals between Zchess, the
  794.     user and other users in Zchess.  These are listed below:
  795.  
  796.     Messages
  797.     Messages are from user to user while Playing in a game.  These
  798.     messages, initiated with the 'M' hot-key, are received by your
  799.     opponent the next time he enters the game.    If a BBS is
  800.     eavesdropping on a section between two other BBSes, the messages are
  801.     not captured, as the communications is assumed to be from a player
  802.     to the other player.
  803.  
  804.     Notes
  805.     Notes are game annotations that are written while Viewing a game and
  806.     pressing 'V'.  Notes are from a user to everyone on a given BBS for
  807.     the purpose of a discussion of the game.  Notes therefore, are not
  808.     sent or received by Netchess.  Notes remain local to the BBS only.
  809.     Annotations can be posted for download and placed into other Zchess
  810.     doors if a particular game has merit.  Look for the file called
  811.  
  812.     Telegrams
  813.     Telegrams are from Zchess to a user regarding game status changes.
  814.     A telegram is generated when Telegrams are not sent to remote BBSes.
  815.     Often telegrams will be generated by games ending with a remote BBS.
  816.  
  817.  
  818.  
  819.     FILES YOU SHOULD WATCH
  820.     You should monitor ZCHESS.LOG, which is in the same directory as
  821.     ZCHESS.EXE.  The log files should be automatically deleted once they
  822.     grow in size to 50000 bytes.  This may or may not have information
  823.     that could be useful to you at the time that its deleted.  If your
  824.     door is running well, then most of the information will probably
  825.     concern people dropping the carrier, and isn't important.
  826.  
  827.     Another file you should watch is PLAYERS.NAM.  There will be a copy
  828.     of this file in your path to PLAYERS.DAT, and each REAL section.
  829.     These files grow until the MAINT.EXE program is run.  MAINT.EXE
  830.     resets the file, and then adds one record for each user.  Before
  831.     this file is reset, the PLAYERS.DAT file is checked for obvious
  832.     corruption, so hopefully between the three files, you will not loose
  833.     all of the player data.
  834.  
  835.     PLAYERS.DAT is the most important file to control.    You might wish
  836.     to maintain a backup of this file each month on a floppy.  This will
  837.     prevent you from loosing most of the ratings and game results.
  838.  
  839.     .PGN files must be watched.  After each game is completed, it is
  840.     exported to a .PGN file in the game subdirectory.  This file will
  841.     grow without boundary.  If your chess door is very active, you
  842.     should watch this file, edit, move or delete it as required.
  843.  
  844.     TIME STAMPING
  845.     Zchess stores and manipulates time using the ANSI time() function.    For
  846.     Turbo C, this value is a long (32 bit) word representing the number of
  847.     seconds that have elapsed since 1-1-1970.  Below is a list of values
  848.     for a few dates:
  849.  
  850.     Date        Count in decimal    Count in hex
  851.  
  852.     01-01-1980          315550800
  853.     01-01-1990          631170000
  854.     04-01-1996          828334800
  855.     07-01-1996          836193600
  856.     08-01-1996          838872000
  857.     09-01-1996          841550400
  858.     10-01-1996          844142400
  859.     11-01-1996          846824400
  860.     12-01-1996          849416400
  861.     01-01-1997          852094800
  862.     02-01-1997          854773200
  863.     03-01-1997          857192400
  864.     04-01-1997          859870800
  865.     05-01-1997          862459200
  866.     06-01-1997          865137600
  867.     07-01-1997          867729600
  868.     08-01-1997          870408000
  869.     09-01-1997          873086400
  870.     10-01-1997          875678400
  871.     11-01-1997          878360400
  872.     12-01-1997          880952400
  873.     01-01-1998          883630800
  874.     01-01-1999          915166800
  875.     01-01-2000          946702800
  876.     01-01-2001          978325200
  877.     01-01-2010         1262322000
  878.     01-01-2020         1577854800
  879.     01-01-2030         1893474000
  880.     01-01-2035         2051240400
  881.     01-01-2036         2082776400
  882.     01-01-2037         2114398800
  883.     01-01-2038         2145934800
  884.     01-15-2038         2147144400
  885.     01-16-2038         2147230800
  886.     01-17-2038         2147317200
  887.     01-18-2038         2147403600
  888.     01-19-2038         2147490000
  889.     01-19-2038    22:14:07 2147483647  7FFFFFFFH
  890.  
  891.     In 40 years or so, this counter will overflow into negative numbers.
  892.     Zchess should have no problems with time until then.
  893.  
  894.     PROTECTION FOR SUBSCRIBERS
  895.     As a subcriber to ZCHESS, you will be protected from harassment by
  896.     telemarketers, MODEM marketers, hacks and whatever else by the fact
  897.     that the author will NOT furnish information that you specify on the
  898.     registeration form except for the following:
  899.  
  900.     BBS Name:    Four character BBS_ID that is contained in your ZCHESS.KEY
  901.     file.
  902.  
  903.     If you want to publish your BBS phone number for the purpose of starting
  904.     interBBS chess-wars, you should post messages on your networked subs
  905.     stating that fact.    I will not post your BBS name and telephone number
  906.     in any public or private medium.
  907.  
  908.     PKZIP Authentication Verification
  909.  
  910.     For your protection, this program has been zipped using the
  911.     following Authentication Verification code:
  912.  
  913.     JWE939 Paul Fargen
  914.  
  915.     The above code should be displayed when the files are extracted from the
  916.     archive file.  If this -AV code is not displayed and you are unsure of
  917.     your source, or any error message is received when the files are
  918.     extracted, please do not use the program.  Call the support BBS shown
  919.     below and download another copy of the program.  Note that some BBSes
  920.     will rezip files posted on their BBSes for the purpose of including
  921.     their own advertisements.  In these cases, you should consider whether
  922.     or not you should run the program or obtain another copy.
  923.  
  924.  
  925.     BBS SUPPORT (Please verify that the BBS is still active with a data
  926.     line before calling.
  927.  
  928.     The Chess Board BBS
  929.     Sysop:  Paul Fargen (That's me!)
  930.     Node 1: 14400, soon to be 28800
  931.     502-962-8781
  932.  
  933.     Email: pfargen@iglou.com
  934.  
  935.  
  936.     REGISTRATION
  937.  
  938.     All version 1.x registrations will also be sent a registered copy of
  939.     version 2.0 as soon as its available.
  940.  
  941.     There is currently one level of registration:
  942.  
  943.     $25  allows full use of Zchess and its utilities without
  944.          restriction.
  945.  
  946.     KY residents add sales tax.
  947.  
  948.     If you prefer to download the key from the support BBS, then send $25
  949.     plus tax, and specify the BBS you will retrieve the file from.  Keys
  950.     will be PKZIPped with encription, so specify the password want used on
  951.     this form.
  952.  
  953.     I will be more than happy to Email your key.  It will be ZIPPED with a
  954.     password that you should specify with your registration.
  955.  
  956.  
  957.      Paul Fargen
  958.      6200 Richiewayne Drive
  959.      Louisville, KY
  960.      40219
  961.  
  962.      System Name__________________________________________________
  963.  
  964.      Four Character KEY Serial Number preferred:  ________________
  965.  
  966.      Second Choice:                   ________________
  967.  
  968.      Third Choice:                      ________________
  969.  
  970.      Your Name ___________________________________________________
  971.  
  972.      Mailing Address______________________________________________
  973.  
  974.      City, State, ZIP, Province, etc._____________________________
  975.  
  976.      _____________________________________________________________
  977.  
  978.      Post Key on my BBS? _________________________________________
  979.  
  980.      Send KEY via Internet Email? ________________________________
  981.  
  982.      Internet Email address. _____________________________________
  983.  
  984.      If key is sent by BBS or Internet, specify the username and
  985.      password you will use to  unzip the .KEY file:
  986.  
  987.      password: _______________________________________
  988.  
  989.      Enclosed:            Registration     $25 ____________
  990.  
  991.                      Shipping           $0 ____________
  992.  
  993.                      Tax (KY 6% )      ____________
  994.  
  995.  
  996.  
  997.      _____________________________________________________________
  998.  
  999.      _____________________________________________________________
  1000.  
  1001.      _____________________________________________________________
  1002.  
  1003.      _____________________________________________________________
  1004.  
  1005.      
  1006.